The present invention generally relates to training in software applications. In particular, the present invention relates to systems and methods for just-in-time training in software applications.
Many applications include online help or training. However, users typically never utilize such assistance for a variety of reasons. For example, online help in current systems is often difficult to utilize fully. Users often must try several different search terms to locate the desired information. Also, users frequently must “drill down” through many parts and subparts to locate help for a particular feature of interest. In addition, once found, such help does not provide training to accomplish a task, but rather only describes generally what a button or command does, not how to use a feature or capability to accomplish a task. A task may be an interaction process that requires multiple steps and/or phases which may involve accessing interfaces that may not be visible or otherwise intuitive. For example, a task may require a particular sequence of inputs that are not expressly laid out for a user or readily discerned. Even interface components, such as dialogs, that have their own help buttons do not allow a user to access help and/or training for the specific task they are trying to perform, but instead only provide a general overview of various options present in a particular dialog.
Often, training may be provided to users of a new software application or upgrade when it is first made available to the users. This training may take the form of a video or live presentation. Frequently, users may receive an in-depth overview of the new software application or upgrade. Sometimes an application specialist will be provided to assist users during the initial deployment of the new software application or upgrade. Users may then ask questions to the application specialist about the user's specific situation. However, after this initial training, users tend to forget details for less frequently utilized features and capabilities.
When a user is first exposed to a complex system, the user tends to rely upon basic functionalities to accomplish tasks. Users tend not to utilize capabilities of a system if they cannot easily figure out how to use those features. However, a user that is more experienced with the system may use more advanced functionalities in order to complete the same tasks in a more timely manner. Because many systems are quite complex, the amount of time necessary to bring a less experienced user up to speed with the more senior users may be extensive. Time consuming training cuts the productivity of senior users, making training expensive, but the less experienced users must catch up somehow.
One example of a complex system is a Picture Arching and Communicating System (PACS) workstation used in a clinical care setting. The PACS workstation is used by a community of users that perform similar tasks. Unfortunately, the PACS workstation is somewhat intolerant of mistakes, which inhibits new and/or less experienced users from experimenting with different functionalities. Thus, less experienced PACS workstation users often develop a habit of using only basic functionalities to complete tasks.
An example of one application used on a PACS workstation is a software application for the manipulation and examination of three-dimensional volumetric datasets. For example, a series of axial CT image slices may be combined to create a three-dimensional volumetric dataset. The application may then allow the user to reformat and/or generate new image slices from the dataset. The application may include a feature that allows, for example, bones to be segmented so that the user can generate and view the images with only soft tissues shown.
Although many tasks may be completed using basic functionalities, the same tasks may often be completed in a more timely manner by utilizing advanced and/or streamlined functionalities. Failure to realize when advanced and/or streamlined functionalities are available may cause less experienced users to spend more time on tasks than experienced users, creating a disparity in efficiency between the two types of users. Thus, continuing the example from above, less experienced users of PACS workstations may not use certain features and/or applications because of their lack of knowledge, reducing efficiency.
Sometimes a less experienced user of a software application may actually have great experience with a small subset of the capabilities of a program, but almost no experience with other, seldom-used features. This results in users not utilizing capabilities because of inexperience. Thus, rather than spend time to learn the features they have little experience with, users may instead simply not perform certain tasks, or may perform them using known methods that are much less efficient. Some users, such as physicians, use software applications for life critical decisions. When a user is unable to learn how to take advantage of features they are less experienced with, the capabilities of the application to aid in diagnosing and treating patients are wasted.
In order for the less experienced users to catch up with the experienced users, one-on-one training and/or time consuming experimentation is often required, which are inefficient. One way to decrease the disparity in efficiency between experienced users and less experienced users is to incorporate customized training into the system itself that is available to users when they require it. Thus, a need exists for a system and method for just-in-time training in software applications.